Mixing Consistency in Geodistributed Transactions: Technical Report
نویسندگان
چکیده
Weakly consistent data stores have become popular because they enable highly available, scalable distributed applications. However, some data needs strong consistency. For applications that mix accesses to strongly and weakly consistent data, programmers must currently choose between bad performance and possible data corruption. We instead introduce a safe mixed-consistency programming model in which programmers choose the consistency level on a per-object basis. Further, they can use atomic, isolated transactions to access both strongly consistent (e.g., linearizable) data and weakly consistent (e.g., causally consistent) data within the same transaction. Compile-time checking ensures that mixing consistency levels is safe: the guarantees of each object’s consistency level are enforced. Programmers avoid being locked into one consistency level; they can make an application-specific tradeoff between performance and consistency. We have implemented this programming model as part of a new system called MyriaStore. MyriaStore demonstrates that safe mixed consistency can be implemented on top of off-the-shelf data stores with their own native, distinct consistency guarantees. Our performance measurements demonstrate that significant performance improvements can be obtained for geodistributed applications that need strong consistency for some critical operations but that also need the high performance and low latency possible with causally consistent data.
منابع مشابه
Geo-Replication in Large Scale Cloud Computing Applications
The work described in the thesis proposes a Geodistributed key-value datastore, named ChainReaction, that offers causal+ consistency, with high performance, fault-tolerance, and scalability. ChainReaction avoids the bottlenecks of linearizability while providing competitive performance when compared with systems merely offering eventual consistency. We have experimentally evaluated the benefits...
متن کاملCost-Based Adaptive Concurrency Control in the Cloud
The recent advent of Cloud computing has strongly influenced the deployment of large-scale applications. Currently, Cloud environments mainly focus on high scalability and availability of these applications. Consistency, in contrast, is relaxed and weak consistency is commonly considered to be sufficient. However, an increasing number of applications are no longer satisfied with weak consistenc...
متن کاملTechnical Report TRCS00-01 Database Replication Using Epidemic Update
Due to severe performance penalties associated with synchronous replication, there is an increasing interest in asynchronous replica management protocols in which database transactions are executed locally, and the effects of these transactions are incorporated asynchronously on remote database copies. However, the asynchronous protocols currently in use either do not guarantee consistency and ...
متن کاملTowards Elastic High-Performance Geo-Distributed Storage in the Cloud
In this thesis, we have presented techniques and algorithms to reduce request latency of distributed storage services that are deployed geographically. In addition, we have proposed and designed elasticity controllers to maintain predictable performance of distributed storage systems under dynamic workloads and platform uncertainties. Firstly, we have proposed a lease-based data consistency alg...
متن کاملGranola: Low-Overhead Distributed Transaction Coordination
This paper presents Granola, a transaction coordination infrastructure for building reliable distributed storage applications. Granola provides a strong consistency model, while significantly reducing transaction coordination overhead. We introduce specific support for a new type of independent distributed transaction, which we can serialize with no locking overhead and no aborts due to write c...
متن کامل